/* #include "stm32f4_iap.h" */

#ifndef __STM32F4_IAP_H
#define __STM32F4_IAP_H

#include "stm32f4xx.h"
/*=====================================================================================================*/
/*=====================================================================================================*/
#define IAP_BOOT_ADDR   ((u32)0x08000000) // FLASH START ADDR
#define IAP_BOOT_SIZE   ((u16)0x4000)     // BOOTLOADER SIZE
#define IAP_APP_ADDR    ((u32)0x08004000) // IAP_BOOT_ADDR + IAP_BOOT_SIZE

#define IAP_SetVectorTable(Offset)  (SCB->VTOR = (u32)(IAP_BOOT_ADDR | (Offset & (u32)0x1FFFFF80)))
/*=====================================================================================================*/
/*=====================================================================================================*/
void IAP_Init( void );
void IAP_Download( void );
void IAP_JumpToApp( void );
/*=====================================================================================================*/
/*=====================================================================================================*/
#endif	 
